home *** CD-ROM | disk | FTP | other *** search
/ Suzy B Software 2 / Suzy B Software CD-ROM 2 (1994).iso / extras / falcon / bwing105 / bwings.asm < prev    next >
Assembly Source File  |  1995-04-27  |  6KB  |  168 lines

  1.  
  2.  Bird's Wings
  3.  ############
  4.  
  5.  Cookies et XbraS:
  6.  ----------------
  7.  
  8.  Cookie:        'WBrd'  Le long mot associé correspond à l'adresse d'un bloc
  9.  Xbra Trap14,Trap1:
  10.                 'BW_2'
  11.  
  12.  Description du bloc B.W.:
  13.  Adresse+offset:
  14.  
  15.  R/W: Accès en lecture/écriture
  16.  R:   Accès en lecture UNIQUEMENT!
  17.  
  18.  Offset Taille  Accès    Description
  19.  +0     L       R        Adresse de l'écran virtuel
  20.  +4     W       R        Xmax physique
  21.  +6     W       R        Ymax physique
  22.  +8     W       R        Nombre de plans de bits
  23.  +10    W       R        Xmax virtuel
  24.  +12    W       R        Ymax virtuel
  25.  +14    W       R        Version, en format $xxyy (exemple: $0112 -> 1.12)
  26.  +16    L       R        Taille de l'écran virtuel en octets 
  27.  +20    W       R        Mode interne
  28.  +22    W       R/W      Nombre de points anticipés pour le déplacement de l'écran
  29.  +24    W       R        Taille d'une ligne virtuelle en octets
  30.  +26    W       R        Incrémentation X de l'écran en points
  31.  +28    W       R        Incrémentation Y de l'écran en points
  32.  +30    W       R        Résolution (VSetmode)
  33.  +32    W       R        Graduation horizontale
  34.  +34    B       R/W      Flag pour le déplacement de l'écran, $FF=autorisé
  35.                          Note: Remis à $FF lors d'un appel XBIOS!
  36.  +35    B       R        Etat de l'écran, $FF=virtuel
  37.  +36    W       R/W      Flags:    0 Superscroll si demandé (1 oui)
  38.                                    1 Centrage (1 oui) 
  39.                                    2 Réservé
  40.                                    3 SuperScroll en continu (Vertic.) (1 oui)
  41.                                    4 SuperScroll en continu (Horiz.) (1 oui)
  42.                                    5 Scroll blocker autorisé (1 oui)
  43.                                    6 Intercepter PTerm? (1 oui)
  44.                                    7 Clic_g + Clic_d pour centrage? (1 oui)
  45.  +38    B       R        $FF
  46.  +39    B       R/W      Masque shift pour centrage/stop
  47.  +40    B       R/W      Move status ($FF=scroll interdit par l'utilisateur)
  48.  +41    B       ?        Réservé
  49.  +62    W                Dernier mot du bloc
  50.  
  51.  
  52.  
  53.  Fonctions système:
  54.  -----------------
  55.  
  56.  Bird's Wings a été programmé de façon à ce qu'il soit compatible avec le plus 
  57.  grand nombre de programmes.
  58.  Pour cela, les fonctions Xbios 2,5,88 et 91 sont détournées et identifiées 
  59.  par Bird's Wings.
  60.  PTerm0, PTerm $4C sont également détournés.
  61.  
  62.  Indications sur l'utilisation de ces fonctions:
  63.  
  64.  - Les indications sont données pour le GfA, mais sont valables pour tous les 
  65.    langages of course!
  66.  - Mode correspond à un mode vidéo quelconque
  67.  
  68.  - *W* signale les cas où les indications se rapportent uniquement si 
  69.    Bird's Wings est actif
  70.    NB: Actif signifie que Bird's Wings est installé MAIS AUSSI qu'il est en mode
  71.        "actif", c'est à dire que la résolution virtuelle est censée être là.
  72.  
  73.        Exemples: 
  74.                 Vous lancez en résolution virtuelle un programme qui modifie les
  75.                 adresses hardware vidéo directement. Bird's Wings n'est plus
  76.                 "actif" mais restaurera la vidéo à la fin du programme, car
  77.                 aucune demande de changement n'a été formulée.
  78.                 
  79.                 Lancez maintenant, toujours en résolution virtuelle, un programme
  80.                 qui mette le bureau en mode "ST moyenne", par les voies "légales"
  81.                 (Xbios 5 ou au pire 88). Bird's Wings n'est non seulement plus
  82.                 "actif", mais il ne restaurera pas la vidéo en fin de programme, 
  83.                 puisque le système est désormais en "ST moyenne" par la demande
  84.                 de ce programme.
  85.                 
  86.    
  87.    
  88.  - (*W*) signale les cas où les indications sont valables, que B.W. soit actif
  89.    ou non
  90.  
  91.  
  92.  
  93.  G e m d o s :
  94.  
  95.  PTerm: $0, $4C
  96.  ------
  97.  
  98.  Gemdos(0)                    *W*: Si l'écran est tordu, il est remis en place
  99.  Gemdos($4C,Err)
  100.  .. ou bombes (ce qui revient au même)
  101.  
  102.  
  103.  X B i o s :
  104.  
  105.  Phybase: 2
  106.  -------
  107.  
  108.  Xbios(2)                     Renvoi le début de l'écran physique
  109.                               *W*: Xbios(2) ne change pas en cas de scrolling
  110.  
  111.  
  112.  SetScreen: 5
  113.  ---------
  114.  
  115.  Xbios(5,L:..,L:..,ST_res)    (*W*) Fonctionne
  116.  
  117.  Xbios(5,L:Adr,L:Adr,-1)      (*W*) Fonctionne (attention à la taille de 
  118.                               l'écran, voir VGetSize)
  119.  
  120.  Xbios(5,L:Adr1,L:Adr2,-1)    (*W*) Fonctionne
  121.  
  122.  Xbios(5,Adr1,Adr2,3,Mode)    (*W*) Fonctionne
  123.  
  124.  
  125.  VSetMode: 88
  126.  --------
  127.  
  128.  Xbios(88,-1)                 (*W*) Renvoi le Mode (bit 12 à 1 si B.W. actif)
  129.  
  130.  Xbios(88,Mode)               (*W*) Fonctionne
  131.  
  132.  
  133.  VGetSize: 91
  134.  --------
  135.  
  136.  Xbios(91,Mode)               (*W*) Fonctionne
  137.  
  138.  
  139.  
  140.  Ce qui ne marche pas..:
  141.  ######################
  142.   
  143.  Accès direct en lecture/écriture à l'adresse de l'écran ($FFFF82xx)
  144.  ou accès aux fonctions XBios directement dans la ROM
  145.  (c'est pourquoi ADebug ne marche pas correctement.. hélas!)
  146.  
  147.  Ce qui est  déconseillé:
  148.  #######################
  149.  
  150.  Accès direct en lecture/écriture aux registres vidéo
  151.  (LineWidth=utiliser la line A, offsets -2 et +2 [.W])
  152.  
  153.  
  154.  Nota:
  155.      Lorsque "Mode" a le bit 12 à 1, les autres bits n'ont absolument aucune
  156.      utilité. Cependant vous ne devez pas en tenir compte pour réinstaller l'écran.
  157.  
  158.      Donc:
  159.      * Un Xbios(91,Bset(Mode,12)) renverra toujours la même taille d'écran, 
  160.      celle de l'écran actuel.  
  161.      * Un Xbios(88,Bset(Mode,12)) ; avec Mode<>du mode actuel, ne fera 
  162.      que réinstaller l'actuelle résolution.
  163.  
  164.  
  165.  That's All.
  166.  
  167.  
  168.